#ifndef TOWER_H
#define TOWER_H
#include <stdlib.h>
#include <iostream>
#include <string>
#include <math.h>
#include "enemy.h"
using namespace std;

class Tower{
public:
	//4 Sekawan
	Tower(string,string,int,int,int,int,int,int,int,int);
	Tower(string,string,int,int,int,int,int,int);
	~Tower();
	Tower(const Tower&);
	Tower& operator=(const Tower);

	//Getter Setter
	string getName();
	string getURL();
	int getType();
	int getAtt();
	int getRange();
	int getCost();
	int getIsBase();
	int getUpgradable();
	int getPosX();
	int getPosY();

	void setName(string);
	void setURL(string);
	void setType(int);
	void setAtt(int);
	void setRange(int);
	void setCost(int);
	void setIsBase(int);
	void setUpgradable(int);
	void setPosX(int);
	void setPosY(int);

	bool canAttack(Enemy);
	void Attack(Enemy&);
	//berhubungan sama enemy
	/*Enemy SearchTarget()
	void Attack(Enemy e)*/

	void DrawTower(sf::RenderWindow&,sf::Sprite&);
private:
	string name;
	string image_url;
	int type;
	int att;
	int range;
	int cost;
	int isbase;
	int upgradable;
	int posx;
	int posy;
};

#endif